package my.sorter.dao.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DiagnosesExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DiagnosesExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andPNameIsNull() {
            addCriterion("p_name is null");
            return (Criteria) this;
        }

        public Criteria andPNameIsNotNull() {
            addCriterion("p_name is not null");
            return (Criteria) this;
        }

        public Criteria andPNameEqualTo(String value) {
            addCriterion("p_name =", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameNotEqualTo(String value) {
            addCriterion("p_name <>", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameGreaterThan(String value) {
            addCriterion("p_name >", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameGreaterThanOrEqualTo(String value) {
            addCriterion("p_name >=", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameLessThan(String value) {
            addCriterion("p_name <", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameLessThanOrEqualTo(String value) {
            addCriterion("p_name <=", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameLike(String value) {
            addCriterion("p_name like", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameNotLike(String value) {
            addCriterion("p_name not like", value, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameIn(List<String> values) {
            addCriterion("p_name in", values, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameNotIn(List<String> values) {
            addCriterion("p_name not in", values, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameBetween(String value1, String value2) {
            addCriterion("p_name between", value1, value2, "pName");
            return (Criteria) this;
        }

        public Criteria andPNameNotBetween(String value1, String value2) {
            addCriterion("p_name not between", value1, value2, "pName");
            return (Criteria) this;
        }

        public Criteria andIdNumberIsNull() {
            addCriterion("id_number is null");
            return (Criteria) this;
        }

        public Criteria andIdNumberIsNotNull() {
            addCriterion("id_number is not null");
            return (Criteria) this;
        }

        public Criteria andIdNumberEqualTo(String value) {
            addCriterion("id_number =", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberNotEqualTo(String value) {
            addCriterion("id_number <>", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberGreaterThan(String value) {
            addCriterion("id_number >", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberGreaterThanOrEqualTo(String value) {
            addCriterion("id_number >=", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberLessThan(String value) {
            addCriterion("id_number <", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberLessThanOrEqualTo(String value) {
            addCriterion("id_number <=", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberLike(String value) {
            addCriterion("id_number like", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberNotLike(String value) {
            addCriterion("id_number not like", value, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberIn(List<String> values) {
            addCriterion("id_number in", values, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberNotIn(List<String> values) {
            addCriterion("id_number not in", values, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberBetween(String value1, String value2) {
            addCriterion("id_number between", value1, value2, "idNumber");
            return (Criteria) this;
        }

        public Criteria andIdNumberNotBetween(String value1, String value2) {
            addCriterion("id_number not between", value1, value2, "idNumber");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIsNull() {
            addCriterion("arrive_time is null");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIsNotNull() {
            addCriterion("arrive_time is not null");
            return (Criteria) this;
        }

        public Criteria andArriveTimeEqualTo(Date value) {
            addCriterion("arrive_time =", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotEqualTo(Date value) {
            addCriterion("arrive_time <>", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeGreaterThan(Date value) {
            addCriterion("arrive_time >", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("arrive_time >=", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeLessThan(Date value) {
            addCriterion("arrive_time <", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeLessThanOrEqualTo(Date value) {
            addCriterion("arrive_time <=", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIn(List<Date> values) {
            addCriterion("arrive_time in", values, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotIn(List<Date> values) {
            addCriterion("arrive_time not in", values, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeBetween(Date value1, Date value2) {
            addCriterion("arrive_time between", value1, value2, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotBetween(Date value1, Date value2) {
            addCriterion("arrive_time not between", value1, value2, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveChannelIsNull() {
            addCriterion("arrive_channel is null");
            return (Criteria) this;
        }

        public Criteria andArriveChannelIsNotNull() {
            addCriterion("arrive_channel is not null");
            return (Criteria) this;
        }

        public Criteria andArriveChannelEqualTo(String value) {
            addCriterion("arrive_channel =", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelNotEqualTo(String value) {
            addCriterion("arrive_channel <>", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelGreaterThan(String value) {
            addCriterion("arrive_channel >", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelGreaterThanOrEqualTo(String value) {
            addCriterion("arrive_channel >=", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelLessThan(String value) {
            addCriterion("arrive_channel <", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelLessThanOrEqualTo(String value) {
            addCriterion("arrive_channel <=", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelLike(String value) {
            addCriterion("arrive_channel like", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelNotLike(String value) {
            addCriterion("arrive_channel not like", value, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelIn(List<String> values) {
            addCriterion("arrive_channel in", values, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelNotIn(List<String> values) {
            addCriterion("arrive_channel not in", values, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelBetween(String value1, String value2) {
            addCriterion("arrive_channel between", value1, value2, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andArriveChannelNotBetween(String value1, String value2) {
            addCriterion("arrive_channel not between", value1, value2, "arriveChannel");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyIsNull() {
            addCriterion("is_emergency is null");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyIsNotNull() {
            addCriterion("is_emergency is not null");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyEqualTo(String value) {
            addCriterion("is_emergency =", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyNotEqualTo(String value) {
            addCriterion("is_emergency <>", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyGreaterThan(String value) {
            addCriterion("is_emergency >", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyGreaterThanOrEqualTo(String value) {
            addCriterion("is_emergency >=", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyLessThan(String value) {
            addCriterion("is_emergency <", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyLessThanOrEqualTo(String value) {
            addCriterion("is_emergency <=", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyLike(String value) {
            addCriterion("is_emergency like", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyNotLike(String value) {
            addCriterion("is_emergency not like", value, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyIn(List<String> values) {
            addCriterion("is_emergency in", values, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyNotIn(List<String> values) {
            addCriterion("is_emergency not in", values, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyBetween(String value1, String value2) {
            addCriterion("is_emergency between", value1, value2, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andIsEmergencyNotBetween(String value1, String value2) {
            addCriterion("is_emergency not between", value1, value2, "isEmergency");
            return (Criteria) this;
        }

        public Criteria andVitalSignsIsNull() {
            addCriterion("vital_signs is null");
            return (Criteria) this;
        }

        public Criteria andVitalSignsIsNotNull() {
            addCriterion("vital_signs is not null");
            return (Criteria) this;
        }

        public Criteria andVitalSignsEqualTo(String value) {
            addCriterion("vital_signs =", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsNotEqualTo(String value) {
            addCriterion("vital_signs <>", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsGreaterThan(String value) {
            addCriterion("vital_signs >", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsGreaterThanOrEqualTo(String value) {
            addCriterion("vital_signs >=", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsLessThan(String value) {
            addCriterion("vital_signs <", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsLessThanOrEqualTo(String value) {
            addCriterion("vital_signs <=", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsLike(String value) {
            addCriterion("vital_signs like", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsNotLike(String value) {
            addCriterion("vital_signs not like", value, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsIn(List<String> values) {
            addCriterion("vital_signs in", values, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsNotIn(List<String> values) {
            addCriterion("vital_signs not in", values, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsBetween(String value1, String value2) {
            addCriterion("vital_signs between", value1, value2, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andVitalSignsNotBetween(String value1, String value2) {
            addCriterion("vital_signs not between", value1, value2, "vitalSigns");
            return (Criteria) this;
        }

        public Criteria andConsciousnessIsNull() {
            addCriterion("consciousness is null");
            return (Criteria) this;
        }

        public Criteria andConsciousnessIsNotNull() {
            addCriterion("consciousness is not null");
            return (Criteria) this;
        }

        public Criteria andConsciousnessEqualTo(String value) {
            addCriterion("consciousness =", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessNotEqualTo(String value) {
            addCriterion("consciousness <>", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessGreaterThan(String value) {
            addCriterion("consciousness >", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessGreaterThanOrEqualTo(String value) {
            addCriterion("consciousness >=", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessLessThan(String value) {
            addCriterion("consciousness <", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessLessThanOrEqualTo(String value) {
            addCriterion("consciousness <=", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessLike(String value) {
            addCriterion("consciousness like", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessNotLike(String value) {
            addCriterion("consciousness not like", value, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessIn(List<String> values) {
            addCriterion("consciousness in", values, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessNotIn(List<String> values) {
            addCriterion("consciousness not in", values, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessBetween(String value1, String value2) {
            addCriterion("consciousness between", value1, value2, "consciousness");
            return (Criteria) this;
        }

        public Criteria andConsciousnessNotBetween(String value1, String value2) {
            addCriterion("consciousness not between", value1, value2, "consciousness");
            return (Criteria) this;
        }

        public Criteria andPainIsNull() {
            addCriterion("pain is null");
            return (Criteria) this;
        }

        public Criteria andPainIsNotNull() {
            addCriterion("pain is not null");
            return (Criteria) this;
        }

        public Criteria andPainEqualTo(String value) {
            addCriterion("pain =", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainNotEqualTo(String value) {
            addCriterion("pain <>", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainGreaterThan(String value) {
            addCriterion("pain >", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainGreaterThanOrEqualTo(String value) {
            addCriterion("pain >=", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainLessThan(String value) {
            addCriterion("pain <", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainLessThanOrEqualTo(String value) {
            addCriterion("pain <=", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainLike(String value) {
            addCriterion("pain like", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainNotLike(String value) {
            addCriterion("pain not like", value, "pain");
            return (Criteria) this;
        }

        public Criteria andPainIn(List<String> values) {
            addCriterion("pain in", values, "pain");
            return (Criteria) this;
        }

        public Criteria andPainNotIn(List<String> values) {
            addCriterion("pain not in", values, "pain");
            return (Criteria) this;
        }

        public Criteria andPainBetween(String value1, String value2) {
            addCriterion("pain between", value1, value2, "pain");
            return (Criteria) this;
        }

        public Criteria andPainNotBetween(String value1, String value2) {
            addCriterion("pain not between", value1, value2, "pain");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisIsNull() {
            addCriterion("anaphylaxis is null");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisIsNotNull() {
            addCriterion("anaphylaxis is not null");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisEqualTo(String value) {
            addCriterion("anaphylaxis =", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisNotEqualTo(String value) {
            addCriterion("anaphylaxis <>", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisGreaterThan(String value) {
            addCriterion("anaphylaxis >", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisGreaterThanOrEqualTo(String value) {
            addCriterion("anaphylaxis >=", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisLessThan(String value) {
            addCriterion("anaphylaxis <", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisLessThanOrEqualTo(String value) {
            addCriterion("anaphylaxis <=", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisLike(String value) {
            addCriterion("anaphylaxis like", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisNotLike(String value) {
            addCriterion("anaphylaxis not like", value, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisIn(List<String> values) {
            addCriterion("anaphylaxis in", values, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisNotIn(List<String> values) {
            addCriterion("anaphylaxis not in", values, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisBetween(String value1, String value2) {
            addCriterion("anaphylaxis between", value1, value2, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andAnaphylaxisNotBetween(String value1, String value2) {
            addCriterion("anaphylaxis not between", value1, value2, "anaphylaxis");
            return (Criteria) this;
        }

        public Criteria andPressureSoreIsNull() {
            addCriterion("pressure_sore is null");
            return (Criteria) this;
        }

        public Criteria andPressureSoreIsNotNull() {
            addCriterion("pressure_sore is not null");
            return (Criteria) this;
        }

        public Criteria andPressureSoreEqualTo(String value) {
            addCriterion("pressure_sore =", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreNotEqualTo(String value) {
            addCriterion("pressure_sore <>", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreGreaterThan(String value) {
            addCriterion("pressure_sore >", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreGreaterThanOrEqualTo(String value) {
            addCriterion("pressure_sore >=", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreLessThan(String value) {
            addCriterion("pressure_sore <", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreLessThanOrEqualTo(String value) {
            addCriterion("pressure_sore <=", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreLike(String value) {
            addCriterion("pressure_sore like", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreNotLike(String value) {
            addCriterion("pressure_sore not like", value, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreIn(List<String> values) {
            addCriterion("pressure_sore in", values, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreNotIn(List<String> values) {
            addCriterion("pressure_sore not in", values, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreBetween(String value1, String value2) {
            addCriterion("pressure_sore between", value1, value2, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andPressureSoreNotBetween(String value1, String value2) {
            addCriterion("pressure_sore not between", value1, value2, "pressureSore");
            return (Criteria) this;
        }

        public Criteria andActiveIsNull() {
            addCriterion("active is null");
            return (Criteria) this;
        }

        public Criteria andActiveIsNotNull() {
            addCriterion("active is not null");
            return (Criteria) this;
        }

        public Criteria andActiveEqualTo(Integer value) {
            addCriterion("active =", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveNotEqualTo(Integer value) {
            addCriterion("active <>", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveGreaterThan(Integer value) {
            addCriterion("active >", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveGreaterThanOrEqualTo(Integer value) {
            addCriterion("active >=", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveLessThan(Integer value) {
            addCriterion("active <", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveLessThanOrEqualTo(Integer value) {
            addCriterion("active <=", value, "active");
            return (Criteria) this;
        }

        public Criteria andActiveIn(List<Integer> values) {
            addCriterion("active in", values, "active");
            return (Criteria) this;
        }

        public Criteria andActiveNotIn(List<Integer> values) {
            addCriterion("active not in", values, "active");
            return (Criteria) this;
        }

        public Criteria andActiveBetween(Integer value1, Integer value2) {
            addCriterion("active between", value1, value2, "active");
            return (Criteria) this;
        }

        public Criteria andActiveNotBetween(Integer value1, Integer value2) {
            addCriterion("active not between", value1, value2, "active");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}